home *** CD-ROM | disk | FTP | other *** search
/ Amiga Developer CD 2.1 / Amiga Developer CD v2.1.iso / NDK / NDK_3.5 / Include / include_i / libraries / asl.i < prev    next >
Encoding:
Text File  |  1999-10-20  |  15.1 KB  |  407 lines

  1.     IFND LIBRARIES_ASL_I
  2. LIBRARIES_ASL_I    SET    1
  3. **
  4. **    $VER: asl.i 44.1 (12.5.1999)
  5. **    Includes Release 44.1
  6. **
  7. **    ASL library structures and constants
  8. **
  9. **    Copyright © 1989-1999 Amiga, Inc.
  10. **    Copyright © 1989-1990 Charlie Heath
  11. **    All Rights Reserved
  12. **
  13.  
  14. ;---------------------------------------------------------------------------
  15.  
  16.     IFND EXEC_TYPES_I
  17.     INCLUDE "exec/types.i"
  18.     ENDC
  19.  
  20.     IFND EXEC_NODES_I
  21.     INCLUDE "exec/nodes.i"
  22.     ENDC
  23.  
  24.     IFND GRAPHICS_TEXT_I
  25.     INCLUDE "graphics/text.i"
  26.     ENDC
  27.  
  28.     IFND GRAPHICS_DISPLAYINFO_I
  29.     INCLUDE "graphics/displayinfo.i"
  30.     ENDC
  31.  
  32. ;---------------------------------------------------------------------------
  33.  
  34. AslName    MACRO
  35.     DC.B 'asl.library',0
  36.     ENDM
  37. ASL_TB    equ (TAG_USER+$80000)
  38.  
  39. ;---------------------------------------------------------------------------
  40.  
  41. ; Types of requesters known to ASL, used as arguments to AllocAslRequest()
  42. ASL_FileRequest          equ 0
  43. ASL_FontRequest          equ 1
  44. ASL_ScreenModeRequest equ 2
  45.  
  46. ;---------------------------------------------------------------------------
  47. ;*
  48. ;* ASL File Requester data structures and constants
  49. ;*
  50. ;* This structure must only be allocated by asl.library amd is READ-ONLY!
  51. ;* Control of the various fields is provided via tags when the requester
  52. ;* is created with AllocAslRequest() and when it is displayed via
  53. ;* AslRequest()
  54. ;*
  55.    STRUCTURE FileRequester,4
  56.     APTR    fr_File          ; Contents of File gadget on exit
  57.     APTR    fr_Drawer      ; Contents of Drawer gadget on exit
  58.     STRUCT    fr_Reserved1,10
  59.     WORD    fr_LeftEdge      ; Coordinates of requester on exit
  60.     WORD    fr_TopEdge
  61.     WORD    fr_Width
  62.     WORD    fr_Height
  63.     STRUCT    fr_Reserved2,2
  64.     LONG    fr_NumArgs      ; Number of files selected
  65.     APTR    fr_ArgList      ; List of files selected
  66.     APTR    fr_UserData      ; You can store your own data here
  67.     STRUCT    fr_Reserved3,8
  68.     APTR    fr_Pattern      ; Contents of Pattern gadget on exit
  69.  
  70. ; File requester tag values, used by AllocAslRequest() and AslRequest()
  71.  
  72. ; Window control
  73. ASLFR_Window          equ ASL_TB+2   ; Parent window
  74. ASLFR_Screen          equ ASL_TB+40  ; Screen to open on if no window
  75. ASLFR_PubScreenName   equ ASL_TB+41  ; Name of public screen
  76. ASLFR_PrivateIDCMP    equ ASL_TB+42  ; Allocate private IDCMP?
  77. ASLFR_IntuiMsgFunc    equ ASL_TB+70  ; Function to handle IntuiMessages
  78. ASLFR_SleepWindow     equ ASL_TB+43  ; Block input in ASLFR_Window?
  79. ASLFR_UserData          equ ASL_TB+52  ; What to put in fr_UserData
  80. ASLFR_PopToFront      equ ASL_TB+131 ; Make the requester window visible
  81.                                      ; when it opens (V44)
  82.  
  83. ; Text display
  84. ASLFR_TextAttr          equ ASL_TB+51  ; Text font to use for gadget text
  85. ASLFR_Locale          equ ASL_TB+50  ; Locale ASL should use for text
  86. ASLFR_TitleText       equ ASL_TB+1   ; Title of requester
  87. ASLFR_PositiveText    equ ASL_TB+18  ; Positive gadget text
  88. ASLFR_NegativeText    equ ASL_TB+19  ; Negative gadget text
  89.  
  90. ; Initial settings
  91. ASLFR_InitialLeftEdge equ ASL_TB+3   ; Initial requester coordinates
  92. ASLFR_InitialTopEdge  equ ASL_TB+4
  93. ASLFR_InitialWidth    equ ASL_TB+5   ; Initial requester dimensions
  94. ASLFR_InitialHeight   equ ASL_TB+6
  95. ASLFR_InitialFile     equ ASL_TB+8   ; Initial contents of File gadget
  96. ASLFR_InitialDrawer   equ ASL_TB+9   ; Initial contents of Drawer gadget
  97. ASLFR_InitialPattern  equ ASL_TB+10  ; Initial contents of Pattern gadget
  98. ASLFR_InitialShowVolumes equ ASL_TB+130 ; Initially, show the volume list
  99.  
  100. ; Options
  101. ASLFR_Flags1          equ ASL_TB+20  ; Option flags
  102. ASLFR_Flags2          equ ASL_TB+22  ; Additional option flags
  103. ASLFR_DoSaveMode      equ ASL_TB+44  ; Being used for saving?
  104. ASLFR_DoMultiSelect   equ ASL_TB+45  ; Do multi-select?
  105. ASLFR_DoPatterns      equ ASL_TB+46  ; Display a Pattern gadget?
  106.  
  107. ; Filtering
  108. ASLFR_DrawersOnly     equ ASL_TB+47  ; Don't display files?
  109. ASLFR_FilterFunc      equ ASL_TB+49  ; Function to filter files
  110. ASLFR_RejectIcons     equ ASL_TB+60  ; Display .info files?
  111. ASLFR_RejectPattern   equ ASL_TB+61  ; Don't display files matching pattern
  112. ASLFR_AcceptPattern   equ ASL_TB+62  ; Accept only files matching pattern
  113. ASLFR_FilterDrawers   equ ASL_TB+63  ; Also filter drawers with patterns
  114. ASLFR_HookFunc          equ ASL_TB+7   ; Combined callback function
  115.  
  116. ; Sorting
  117. ASLFR_SetSortBy       equ ASL_TB+124 ; Sort criteria (name, date, size)
  118. ASLFR_GetSortBy       equ ASL_TB+125
  119. ASLFR_SetSortDrawers  equ ASL_TB+126 ; Placement of drawers in the list
  120. ASLFR_GetSortDrawers  equ ASL_TB+127
  121. ASLFR_SetSortOrder    equ ASL_TB+128 ; Order (ascending or descending)
  122. ASLFR_GetSortOrder    equ ASL_TB+129
  123.  
  124. ; Flag bits for the ASLFR_Flags1 tag
  125.     BITDEF FR,DOWILDFUNC,7
  126.     BITDEF FR,DOMSGFUNC,6
  127.     BITDEF FR,DOSAVEMODE,5
  128.     BITDEF FR,PRIVATEIDCMP,4
  129.     BITDEF FR,DOMULTISELECT,3
  130.     BITDEF FR,DOPATTERNS,0
  131.  
  132. ; Flag bits for the ASLFR_Flags2 tag
  133.     BITDEF FR,DRAWERSONLY,0
  134.     BITDEF FR,FILTERDRAWERS,1
  135.     BITDEF FR,REJECTICONS,2
  136.  
  137. ; Sort criteria for the ASLFR_SetSortBy/ASLFR_GetSortBy tags
  138. ASLFRSORTBY_Name   equ 0
  139. ASLFRSORTBY_Date   equ 1
  140. ASLFRSORTBY_Size   equ 2
  141.  
  142. ; Drawer placement for the ASLFR_SetSortDrawers/ASLFR_GetSortDrawers tags
  143. ASLFRSORTDRAWERS_First  equ 0
  144. ASLFRSORTDRAWERS_Mix    equ 1
  145. ASLFRSORTDRAWERS_Last   equ 2
  146.  
  147. ; Sort order for the ASLFR_SetSortOrder/ASLFR_GetSortOrder tags
  148. ASLFRSORTORDER_Ascend   equ 0
  149. ASLFRSORTORDER_Descend  equ 1
  150.  
  151. ;---------------------------------------------------------------------------
  152. ;*
  153. ;* ASL Font Requester data structures and constants
  154. ;*
  155. ;* This structure must only be allocated by asl.library amd is READ-ONLY!
  156. ;* Control of the various fields is provided via tags when the requester
  157. ;* is created with AllocAslRequest() and when it is displayed via
  158. ;* AslRequest()
  159. ;*
  160.    STRUCTURE FontRequester,8
  161.     STRUCT    fo_Attr,ta_SIZEOF    ; Returned TextAttr
  162.     UBYTE    fo_FrontPen         ; Returned front pen
  163.     UBYTE    fo_BackPen         ; Returned back pen
  164.     UBYTE    fo_DrawMode         ; Returned drawing mode
  165.     UBYTE    fo_Reserved1
  166.     APTR    fo_UserData         ; You can store your own data here
  167.     WORD    fo_LeftEdge         ; Coordinates of requester on exit
  168.     WORD    fo_TopEdge
  169.     WORD    fo_Width
  170.     WORD    fo_Height
  171.     STRUCT    fo_TAttr,tta_SIZEOF  ; Returned TTextAttr
  172.  
  173. ; Font requester tag values, used by AllocAslRequest() and AslRequest()
  174.  
  175. ; Window control
  176. ASLFO_Window          equ ASL_TB+2   ; Parent window
  177. ASLFO_Screen          equ ASL_TB+40  ; Screen to open on if no window
  178. ASLFO_PubScreenName   equ ASL_TB+41  ; Name of public screen
  179. ASLFO_PrivateIDCMP    equ ASL_TB+42  ; Allocate private IDCMP?
  180. ASLFO_IntuiMsgFunc    equ ASL_TB+70  ; Function to handle IntuiMessages
  181. ASLFO_SleepWindow     equ ASL_TB+43  ; Block input in ASLFO_Window?
  182. ASLFO_UserData          equ ASL_TB+52  ; What to put in fo_UserData
  183. ASLFO_PopToFront      equ ASL_TB+131 ; Make the requester window visible
  184.                                      ; when it opens (V44)
  185.  
  186. ; Text display
  187. ASLFO_TextAttr          equ ASL_TB+51  ; Text font to use for gadget text
  188. ASLFO_Locale          equ ASL_TB+50  ; Locale ASL should use for text
  189. ASLFO_TitleText       equ ASL_TB+1   ; Title of requester
  190. ASLFO_PositiveText    equ ASL_TB+18  ; Positive gadget text
  191. ASLFO_NegativeText    equ ASL_TB+19  ; Negative gadget text
  192.  
  193. ; Initial settings
  194. ASLFO_InitialLeftEdge equ ASL_TB+3   ; Initial requester coordinates
  195. ASLFO_InitialTopEdge  equ ASL_TB+4
  196. ASLFO_InitialWidth    equ ASL_TB+5   ; Initial requester dimensions
  197. ASLFO_InitialHeight   equ ASL_TB+6
  198. ASLFO_InitialName     equ ASL_TB+10  ; Initial contents of Name gadget
  199. ASLFO_InitialSize     equ ASL_TB+11  ; Initial contents of Size gadget
  200. ASLFO_InitialStyle    equ ASL_TB+12  ; Initial font style
  201. ASLFO_InitialFlags    equ ASL_TB+13  ; Initial font flags for TextAttr
  202. ASLFO_InitialFrontPen equ ASL_TB+14  ; Initial front pen
  203. ASLFO_InitialBackPen  equ ASL_TB+15  ; Initial back pen
  204. ASLFO_InitialDrawMode equ ASL_TB+59  ; Initial draw mode
  205.  
  206. ; Options
  207. ASLFO_Flags          equ ASL_TB+20  ; Option flags
  208. ASLFO_DoFrontPen      equ ASL_TB+44  ; Display Front color selector?
  209. ASLFO_DoBackPen       equ ASL_TB+45  ; Display Back color selector?
  210. ASLFO_DoStyle          equ ASL_TB+46  ; Display Style checkboxes?
  211. ASLFO_DoDrawMode      equ ASL_TB+47  ; Display DrawMode cycle gadget?
  212.  
  213. ; Filtering
  214. ASLFO_FixedWidthOnly  equ ASL_TB+48  ; Only allow fixed-width fonts?
  215. ASLFO_MinHeight       equ ASL_TB+16  ; Minimum font height to display
  216. ASLFO_MaxHeight       equ ASL_TB+17  ; Maximum font height to display
  217. ASLFO_FilterFunc      equ ASL_TB+49  ; Function to filter fonts
  218. ASLFO_HookFunc          equ ASL_TB+7   ; Combined callback function
  219. ASLFO_MaxFrontPen     equ ASL_TB+66  ; Max # of colors in front palette
  220. ASLFO_MaxBackPen      equ ASL_TB+67  ; Max # of colors in back palette
  221.  
  222. ; Custom additions
  223. ASLFO_ModeList          equ ASL_TB+21  ; Substitute list for drawmodes
  224. ASLFO_FrontColors     equ ASL_TB+64  ; Color table for front pen palette
  225. ASLFO_BackColors      equ ASL_TB+65  ; Color table for back pen palette
  226.  
  227. ; Flag bits for ASLFO_Flags tag
  228.     BITDEF FO,DOFRONTPEN,0
  229.     BITDEF FO,DOBACKPEN,1
  230.     BITDEF FO,DOFONTSTYLE,2
  231.     BITDEF FO,DODRAWMODE,3
  232.     BITDEF FO,FIXEDWIDTHONLY,4
  233.     BITDEF FO,PRIVATE,5
  234.     BITDEF FO,DOMSGFUNC,6
  235.     BITDEF FO,DOWILDFUNC,7
  236.  
  237. ;---------------------------------------------------------------------------
  238. ;*
  239. ;* ASL ScreenMode Requester data structures and constants
  240. ;*
  241. ;* This structure must only be allocated by asl.library and is READ-ONLY!
  242. ;* Control of the various fields is provided via tags when the requester
  243. ;* is created with AllocAslRequest() and when it is displayed via
  244. ;* AslRequest()
  245. ;*
  246.    STRUCTURE ScreenModeRequester,0
  247.     ULONG sm_DisplayID    ; Display mode ID
  248.     ULONG sm_DisplayWidth    ; Width of display in pixels
  249.     ULONG sm_DisplayHeight    ; Height of display in pixels
  250.     UWORD sm_DisplayDepth    ; Number of bit-planes of display
  251.     UWORD sm_OverscanType    ; Type of overscan of display
  252.     UWORD sm_AutoScroll    ; Display should auto-scroll?
  253.  
  254.     ULONG sm_BitMapWidth    ; Used to create your own BitMap
  255.     ULONG sm_BitMapHeight
  256.  
  257.     WORD  sm_LeftEdge    ; Coordinates of requester on exit
  258.     WORD  sm_TopEdge
  259.     WORD  sm_Width
  260.     WORD  sm_Height
  261.  
  262.     BOOL  sm_InfoOpened    ; Info window opened on exit?
  263.     WORD  sm_InfoLeftEdge    ; Last coordinates of Info window
  264.     WORD  sm_InfoTopEdge
  265.     WORD  sm_InfoWidth
  266.     WORD  sm_InfoHeight
  267.  
  268.     APTR  sm_UserData    ; You can store your own data here
  269.  
  270. ;* An Exec list of custom modes can be added to the list of available modes.
  271. ;* The DimensionInfo structure must be completely initialized, including the
  272. ;* Header. See <graphics/displayinfo.h>. Custom mode ID's must be in the range
  273. ;* 0xFFFF0000..0xFFFFFFFF. Regular properties which apply to your custom modes
  274. ;* can be added in the dn_PropertyFlags field. Custom properties are not
  275. ;* allowed.
  276. ;*
  277.    STRUCTURE DisplayMode,LN_SIZE                ; see ln_Name
  278.     STRUCT dm_DimensionInfo,dim_SIZEOF    ; mode description
  279.     ULONG  dm_PropertyFlags            ; applicable properties
  280.    LABEL DisplayMode_SIZEOF
  281.  
  282. ; ScreenMode requester tag values, used by AllocAslRequest() and AslRequest()
  283.  
  284. ; Window control
  285. ASLSM_Window          equ ASL_TB+2   ; Parent window
  286. ASLSM_Screen          equ ASL_TB+40  ; Screen to open on if no window
  287. ASLSM_PubScreenName   equ ASL_TB+41  ; Name of public screen
  288. ASLSM_PrivateIDCMP    equ ASL_TB+42  ; Allocate private IDCMP?
  289. ASLSM_IntuiMsgFunc    equ ASL_TB+70  ; Function to handle IntuiMessages
  290. ASLSM_SleepWindow     equ ASL_TB+43  ; Block input in ASLSM_Window?
  291. ASLSM_UserData        equ ASL_TB+52  ; What to put in sm_UserData
  292. ASLSM_PopToFront      equ ASL_TB+131 ; Make the requester window visible
  293.                                      ; when it opens (V44)
  294.  
  295. ; Text display
  296. ASLSM_TextAttr        equ ASL_TB+51  ; Text font to use for gadget text
  297. ASLSM_Locale          equ ASL_TB+50  ; Locale ASL should use for text
  298. ASLSM_TitleText       equ ASL_TB+1   ; Title of requester
  299. ASLSM_PositiveText    equ ASL_TB+18  ; Positive gadget text
  300. ASLSM_NegativeText    equ ASL_TB+19  ; Negative gadget text
  301.  
  302. ; Initial settings
  303. ASLSM_InitialLeftEdge equ ASL_TB+3   ; Initial requester coordinates
  304. ASLSM_InitialTopEdge  equ ASL_TB+4
  305. ASLSM_InitialWidth    equ ASL_TB+5   ; Initial requester dimensions
  306. ASLSM_InitialHeight   equ ASL_TB+6
  307. ASLSM_InitialDisplayID     equ ASL_TB+100 ; Initial display mode id
  308. ASLSM_InitialDisplayWidth  equ ASL_TB+101 ; Initial display width
  309. ASLSM_InitialDisplayHeight equ ASL_TB+102 ; Initial display height
  310. ASLSM_InitialDisplayDepth  equ ASL_TB+103 ; Initial display depth
  311. ASLSM_InitialOverscanType  equ ASL_TB+104 ; Initial type of overscan
  312. ASLSM_InitialAutoScroll    equ ASL_TB+105 ; Initial autoscroll setting
  313. ASLSM_InitialInfoOpened    equ ASL_TB+106 ; Info wndw initially opened?
  314. ASLSM_InitialInfoLeftEdge  equ ASL_TB+107 ; Initial Info window coords.
  315. ASLSM_InitialInfoTopEdge   equ ASL_TB+108
  316.  
  317. ; Options
  318. ASLSM_DoWidth         equ ASL_TB+109  ; Display Width gadget?
  319. ASLSM_DoHeight        equ ASL_TB+110  ; Display Height gadget?
  320. ASLSM_DoDepth         equ ASL_TB+111  ; Display Depth gadget?
  321. ASLSM_DoOverscanType  equ ASL_TB+112  ; Display Overscan Type gadget?
  322. ASLSM_DoAutoScroll    equ ASL_TB+113  ; Display AutoScroll gadget?
  323.  
  324. ; Filtering
  325. ASLSM_PropertyFlags   equ ASL_TB+114  ; Must have these Property flags
  326. ASLSM_PropertyMask    equ ASL_TB+115  ; Only these should be looked at
  327. ASLSM_MinWidth        equ ASL_TB+116  ; Minimum display width to allow
  328. ASLSM_MaxWidth        equ ASL_TB+117  ; Maximum display width to allow
  329. ASLSM_MinHeight       equ ASL_TB+118  ; Minimum display height to allow
  330. ASLSM_MaxHeight       equ ASL_TB+119  ; Maximum display height to allow
  331. ASLSM_MinDepth        equ ASL_TB+120  ; Minimum display depth
  332. ASLSM_MaxDepth        equ ASL_TB+121  ; Maximum display depth
  333. ASLSM_FilterFunc      equ ASL_TB+122  ; Function to filter mode id's
  334.  
  335. ; Custom additions
  336. ASLSM_CustomSMList    equ ASL_TB+123  ; Exec list of struct DisplayMode
  337.  
  338. ;---------------------------------------------------------------------------
  339. ; Obsolete ASL definitions, here for source code compatibility only.
  340. ; Please do NOT use in new code.
  341. ;
  342. ; Set ASL_V38_NAMES_ONLY to remove these older names
  343. ;
  344.     IFND ASL_V38_NAMES_ONLY
  345. rf_File        equ    fr_File
  346. rf_Dir        equ    fr_Drawer
  347. rf_LeftEdge    equ    fr_LeftEdge
  348. rf_TopEdge    equ    fr_TopEdge
  349. rf_Width    equ    fr_Width
  350. rf_Height    equ    fr_Height
  351. rf_NumArgs    equ    fr_NumArgs
  352. rf_ArgList    equ    fr_ArgList
  353. rf_UserData    equ    fr_UserData
  354. rf_Pat        equ    fr_Pattern
  355. ASL_Dummy    equ    TAG_USER+$80000
  356. ASL_Hail    equ    ASL_Dummy+1
  357. ASL_Window    equ    ASL_Dummy+2
  358. ASL_LeftEdge    equ    ASL_Dummy+3
  359. ASL_TopEdge    equ    ASL_Dummy+4
  360. ASL_Width    equ    ASL_Dummy+5
  361. ASL_Height    equ    ASL_Dummy+6
  362. ASL_HookFunc    equ    ASL_Dummy+7
  363. ASL_File    equ    ASL_Dummy+8
  364. ASL_Dir        equ    ASL_Dummy+9
  365. ASL_Pattern    equ    ASL_Dummy+10
  366. ASL_FontName    equ    ASL_Dummy+10
  367. ASL_FontHeight    equ    ASL_Dummy+11
  368. ASL_FontStyles    equ    ASL_Dummy+12
  369. ASL_FontFlags    equ    ASL_Dummy+13
  370. ASL_FrontPen    equ    ASL_Dummy+14
  371. ASL_BackPen    equ    ASL_Dummy+15
  372. ASL_MinHeight    equ    ASL_Dummy+16
  373. ASL_MaxHeight    equ    ASL_Dummy+17
  374. ASL_OKText    equ    ASL_Dummy+18
  375. ASL_CancelText    equ    ASL_Dummy+19
  376. ASL_FuncFlags    equ    ASL_Dummy+20
  377. ASL_ModeList    equ    ASL_Dummy+21
  378. ASL_ExtFlags1    equ    ASL_Dummy+22
  379. ; remember what I said up there? Do not use these anymore!
  380.     BITDEF    FIL,PATGAD,0
  381.     BITDEF    FIL,MULTISELECT,3
  382.     BITDEF    FIL,NEWIDCMP,4
  383.     BITDEF    FIL,SAVE,5
  384.     BITDEF    FIL,DOMSGFUNC,6
  385.     BITDEF    FIL,DOWILDFUNC,7
  386.     BITDEF    FIL1,NOFILES,0
  387.     BITDEF    FIL1,MATCHDIRS,1
  388.     BITDEF    RF,DOWILDFUNC,7
  389.     BITDEF    RF,DOMSGFUNC,6
  390.     BITDEF    RF,DOCOLOR,5
  391.     BITDEF    RF,NEWIDCMP,4
  392.     BITDEF    RF,MULTISELECT,3
  393.     BITDEF    RF,PATGAD,0
  394.     BITDEF    FON,FRONTCOLOR,0
  395.     BITDEF    FON,BACKCOLOR,1
  396.     BITDEF    FON,STYLES,2
  397.     BITDEF    FON,DRAWMODE,3
  398.     BITDEF    FON,FIXEDWIDTH,4
  399.     BITDEF    FON,NEWIDCMP,5
  400.     BITDEF    FON,DOMSGFUNC,6
  401.     BITDEF    FON,DOWILDFUNC,7
  402.     ENDC
  403.  
  404. ;---------------------------------------------------------------------------
  405.  
  406.     ENDC    ; LIBRARIES_ASL_I
  407.